<template>
  <view class="container">
    <!-- 选择文件按钮 -->
    <button @click="chooseFiles">选择文件</button>
    <view v-if="filePaths.length > 0">已选择 {{ filePaths.length }} 个文件</view>

    <!-- Note 字段示例 -->
    <input v-model="note.title" placeholder="笔记标题" class="input" />
    <textarea v-model="note.content" placeholder="笔记内容" class="textarea"></textarea>

    <!-- 提交按钮 -->
    <button @click="submitForm" :disabled="!filePaths.length">提交</button>
  </view>
</template>

<script>
	import axios from 'axios';
export default {
  data() {
    return {
      filePaths: [], // 本地临时文件路径
      tempFiles: [], // 临时文件对象（包含文件信息）
      note: {
        title: '',
        content: '',
		status:1,
		userid:1
      },
    };
  },
  methods: {
    // 选择文件（支持多文件）
    chooseFiles() {
      uni.chooseImage({
        count: 9, // 最多选择 9 个文件
        sizeType: ['original', 'compressed'], // 原图或压缩
        success: (res) => {
          const tempFilePathsList = res.tempFiles;
          this.tempFiles = res.tempFiles; // 包含文件名、大小等信息
		  console.log(tempFilePathsList);
		  this.filePaths=tempFilePathsList
		  // console.log(this.filePaths);
        },
      });
    },
	
submitForm() {
	// uni.request({
	//   url: 'http://localhost:8084/note/addonenote1',
	//   method: 'POST',
	//   data: JSON.stringify(this.note), // 必须转为JSON字符串
	//   header: {
	//     'Content-Type': 'application/json',
	//     'Authorization': 'Bearer ' + uni.getStorageSync('token') // 按需添加
	//   },
	//   success: (res) => {
	//     if (res.statusCode === 200) {
	//       console.log('提交成功', res.data);
	//       uni.showToast({ title: '提交成功' });
	//     } else {
	//       console.error('服务器错误', res);
	//       uni.showToast({ title: '提交失败', icon: 'none' });
	//     }
	//   },
	//   fail: (err) => {
	//     console.error('网络错误', err);
	//     uni.showToast({ title: '网络错误', icon: 'none' });
	//   }
	// });
	
	
// 	console.log(111);
// 	// 发送请求（H5 端）
	uni.request({
	  url: 'http://localhost:8084/note/addonenote1',
	  method: 'POST',
	  data: JSON.stringify(this.note),
	  header: {
	    // 'Content-Type': 'application/json' ,// 关键
		'Content-Type': 'application/json',
	  },
	  success: (res) => {
			console.log(111);
	    console.log('批量上传成功', res);
	  },
	  fail: (err) => {
	  	console.log(err);
	  }
	});
  // 创建 FormData 对象（仅 H5 支持，小程序需用 uni.uploadFile）
  const formData = new FormData();
  formData.append('userid',1)
  formData.append('noteid',1)
  // 添加所有文件
  this.filePaths.forEach((filePath, index) => {
    // 注意：H5 端可直接用 File 对象，小程序需先获取临时文件
	console.log(this.filePaths[index]);
    formData.append('file', this.filePaths[index]);
	
  });
for (let pair of formData.entries()) {
  console.log(pair[0], pair[1]); 
}
  // 添加 JSON 数据
  // formData.append('note', JSON.stringify(this.note));
    axios({
        method: 'post',//请求方法 
        url: 'http://127.0.0.1:8084/note/addonenote2',
    	headers: {
    	  // 'Header-To-Delete': '' // 这将发送一个空的Header-To-Delete请求头
    	'content-type':'mulitpart/form-data'
    		   },
    		  data: formData
    	}).then(res => {
    	   console.log(res.data)
    	})

},

    // 提交表单（核心逻辑）
    // submitForm() {
    //   if (!this.filePaths.length) {
    //     uni.showToast({ title: '请选择文件', icon: 'none' });
    //     return;
    //   }

    //   // 1. 构建表单数据
    //   const formData = {
    //     // 将 Note 对象转为 JSON 字符串（后端需手动解析）
    //     note: JSON.stringify(this.note), 
    //   };

    //   // 2. 上传文件（循环上传多个文件）
    //     uni.uploadFile({
    //       url: 'https://127.0.0.1:8084/note/addonenote', // 后端接口地址
		  // // header:{
			 // //  'type-content':''
		  // // }
    //       filePath: this.filePaths, // 本地临时文件路径
    //       name: 'file', // 对应后端 @RequestParam("file")
    //       formData: formData, // 附带的表单数据（含 Note JSON）

    //       // 上传成功回调
    //       success: (res) => {
			 //   console.log(res);
    //         if (res.statusCode === 200) {
    //           const result = JSON.parse(res.data);
			 
    //           if (result.code === 200) {
    //             uni.showToast({ title: '上传成功' });
    //           } else {
    //             uni.showToast({ title: result.message || '上传失败', icon: 'none' });
    //           }
    //         } else {
    //           uni.showToast({ title: `请求失败，状态码：${res.statusCode}`, icon: 'none' });
    //         }
    //       },

    //       // 上传失败回调
    //       fail: (err) => {
    //         console.error('上传失败：', err);
    //         uni.showToast({ title: '网络错误，请重试', icon: 'none' });
    //       },
    //     });
     
    // },
  },
};
</script>

<style scoped>
.container {
  padding: 16px;
}
.input, .textarea {
  width: 100%;
  padding: 8px;
  margin: 8px 0;
  border: 1px solid #eee;
  border-radius: 4px;
}
</style>